package Modelos;

import java.util.Vector;

import javax.swing.table.AbstractTableModel;


import DAO.*;

public class AlumnoTableModel extends AbstractTableModel {
	public String[] m_colNames = { "ID alumno", "Nombre", "Apellido1",
			"Apellido2", "DNI", "Direccion", "Telefono", "Fecha Nacimiento" };

	public Class[] m_colTypes = { Integer.class, String.class, String.class,
			String.class, String.class, String.class, String.class,
			String.class, String.class };

	private Vector alumnos;

	public AlumnoTableModel(Vector alumnos) {
		super();
		this.alumnos = alumnos;
	}

	public int getColumnCount() {
		return m_colNames.length;
	}

	public int getRowCount() {
		return alumnos.size();
	}

	public Object getValueAt(int row, int col) {
		AlumnoDAO datos = (AlumnoDAO) (alumnos.elementAt(row));

		switch (col) {
		case 0:
			return datos.getIdAlumno();
			
		case 1:
			return datos.getNombre();

		case 2:
			return datos.getApellido1();

		case 3:
			return datos.getApellido2();

		case 4:
			return datos.getNif();

		case 5:
			return datos.getDir_alumno();

		case 6:
			return datos.getTfno_alumno();

		case 7:
			return datos.getFechaNac();

		}
		return new String();
	}

	public String getColumnName(int col) {
		return m_colNames[col];
	}

	public Class getColumnClass(int col) {
		return m_colTypes[col];
	}

	public void setValueAt(Object valor, int row, int col) {
		AlumnoDAO datos = (AlumnoDAO) (alumnos.elementAt(row));

		switch (col) {
		case 0:
			datos.setIdAlumno((int) valor);
			break;
		case 1:
			datos.setNombre((String) valor);
			break;
		case 2:
			datos.setApellido1((String) valor);
			break;
		case 3:
			datos.setApellido2((String) valor);
			break;
		case 4:
			datos.setNif((String) valor);
			break;
		case 5:
			datos.setDir_alumno((String) valor);
			break;
		case 6:
			datos.setTfno_alumno((String) valor);
			break;
		case 7:
			datos.setFechaNac((String) valor);
			break;
		}
	}

}
